1. Field of the Invention
The present invention relates to routing of packets by an Internet Protcol (IP) router based on associating a destination address of a received IP packet with routing table entries. More particularly, the present invention relates to aggregation of routes in an IP router for mobile routers of an IPv6 mobile network
2. Description of the Related Art
Proposals have been made by Internet Engineering Task Force (IETF) groups for improved mobility support of Internet Protocol (IP) based mobile devices (e.g., laptops, IP phones, personal digital assistants, etc.) in an effort to provide continuous Internet Protocol (IP) based connectivity. The IETF has two working groups focusing on mobile networks, a Mobile Ad-hoc Networks (MANET) Working Group that is working to develop standardized MANET routing specification(s) for adoption by the IETF, and NEMO (mobile networks). NEMO uses Mobile IP (MIP) to provide connectivity between mobile networks and the infrastructure (e.g., the Internet). The key component in NEMO is a mobile router that handles MIP on behalf of the mobile networks that it serves.
According to the MANET Working Group, the “mobile ad hoc network” (MANET) is an autonomous system of mobile routers (and associated hosts) connected by wireless links—the union of which form an arbitrary graph. The routers are free to move randomly and organize themselves arbitrarily; thus, the network's wireless topology may change rapidly and unpredictably. Such a network may operate in a standalone fashion, or may be connected to the larger Internet.
A “Mobile IPv6” protocol is disclosed in an Internet Draft by Johnson et al., entitled “Mobility Support in IPv6”, available on the World Wide Web at the address: http://www.ietf.org/internet-drafts/draft-ietf-mobileip-ipv6-20.txt (the disclosure of which is incorporated in its entirety herein by reference). According to Johnson et al., the Mobile IPv6 protocol enables a mobile node to move from one link to another without changing the mobile node's IP address. In particular, the mobile node is assigned a “home address”. The “home address” is an IP address assigned to the mobile node within its home subnet prefix on its home link. While a mobile node is at home, packets addressed to its home address are routed to the mobile node's home link, using conventional Internet routing mechanisms.
The mobile node also is assigned a home agent for registering any care-of address used by the mobile node at its point of attachment to the Internet while the mobile node is away from its home link. A care-of address is an IP address associated with a mobile node that has the subnet prefix of a particular link away from its home link (i.e., a foreign link). A home agent is a router on a mobile node's home link with which the mobile node has registered its current care-of address. While the mobile node is away from its home link, the home agent intercepts packets on the home link destined to the mobile node's home address; the home agent encapsulates the packets, and tunnels the packets to the mobile node's registered care-of address.
Hence, a mobile node is always addressable by its “home address”: packets may be routed to the mobile node using this address regardless of the mobile node's current point of attachment to the Internet. The mobile node also may continue to communicate with other nodes (stationary or mobile) after moving to a new link. The movement of a mobile node away from its home link is thus transparent to transport and higher-layer protocols and applications.
A particular problem of network mobility is that conventional aggregation of routes is not feasable for mobile routers. In particular, routers in a conventional Internet-based network topology are configured for aggregating routes based on groupings of subnets according to a hierarchy of common addresses. For example, a top-level router (e.g., a primary router of an organization configured as an entry point to the organization for all Internet traffic) advertises to other routers in the Internet that all packets having a destination address top level prefix (e.g., 127/8 for IPv4) should be sent to that top-level router.
The top-level router includes a routing table that includes including routing entries. Each routing entry includes a corresponding prefix key and a next hop field. The prefix key is used to match the destination address of an incoming packet (typically applying a net mask to the destination address); hence, the router identifies the entry having the corresponding prefix key that matches the masked destination address, and routes the packet to the router specified in the corresponding next hop field. Hence, a single router may aggregate multiple routes for reaching routers configured for serving the subnets having subnet address prefix values within the aggregated value of 127/8 (e.g., 127.192/10, 127.192/10, 127.192/10, and 127.192/10, etc.). Each subnet typically will include additional routers configured for routing packets within the corresponding prescribed address space.
In the case of mobile networking, however, aggregation is not possible using conventional aggregation techniques, since all the mobile routers are addressed via their own respective home addresses on their own home networks. In particular, the home subnet prefix for a network is an initial set of bits of an IP address which identifies the home link within the Internet topology (i.e. the IP subnet prefix corresponding to the mobile node's home address). However, the home address of a mobile router may be distinct from the subnet prefix of the mobile network attached to the mobile router. Hence, the home agent would require a routing table entry for each mobile router that serves as a point of attachment for a corresponding mobile network.